Various types of data handling systems have multiple servers that supply services to multiple clients. These systems typically use several types of resources to perform various functions. These resources are generally consumed in varying degrees depending on the volume and type of data traffic imposed on the system. Performance can degrade in overall input/output latency due to the loads applied to the system.
For example in array controller systems, hosts can generate and array controllers can absorb more input/output traffic than the array controllers can process with low latencies. Limitations on processing capabilities of the array controllers largely relate to the number and size of internal queues to the controller. If not effectively managed, the input/output traffic can cause long latencies. Resources are effectively managed when the hosts supply as much work as possible while retaining acceptable latency.